The three critical components to getting the GNU system
running on new types of machine are GCC (the GNU C
Compiler), binutils (the GNU binary utilities) and Mach.
GCC and binutils are already widely ported, so the obvious
next step is to assess the portability of Mach. Mach as
distributed by GNU supports only the i386 (and similar)
processors. In order to determine how easy it is to port
Mach, I decided to attempt to port it to run on the ARM
architecture which I am reasonably familiar with programming.